/**
  ******************************************************************************
  * @file    filter.h
  * @author  xiaohu
  * @version V1.0.0
  * @date    03-03-2016
  * @brief   终端加固
  ******************************************************************************
  * @attention
  *
  * <h2><center>&copy; COPYRIGHT 2016 上海今中网络科技有限公司 </center></h2>
  ******************************************************************************
  */

#ifndef __FILTER__H__
#define __FILTER__H__

#include "stringx.h"
#include "logic-bnf.h"
#include "string-util.h"
#include "socket-util.h"
#include "prototypes.h"
#include "log-handle.h" ///这里的依赖关系需要理一下

///****************patched by xiaohu mod*************2016/02/26*******
extern char            FilterPhoneTypeDoorFLine[1024];
extern char            FilterPhoneTypeDoorSLine[1024];
extern int             FilterPhoneTypeDoorPermit;                 ///0表示允许

///*************************************************************************

///配置文件中的通配元素放入二维数组
typedef
struct _wild_element_t
{
	char ** wildElementList;    ///统配符元素列表
	size_t size;                ///列表的大小
}WILD_ELEMENT_T;///此处指手机类型列表


/**
  * @brief    对过滤元素的预处理
  * @param	  arg1:文件名 arg2:out firstLine 字符串 arg3: out secondLine 字符串 \
  *           arg4 第一行分析出来的字符串数组 arg5: out int 是否允许登录
  * @retval   0：说明文件内是NULL 1：不是NULL
  */
int filter_element_pre(char *filename);

/**
  * @brief    检查运行中的process，按文件生成表达式，最后得出结果
  * @param	  arg1:第二行	arg2:由第一行处理出来的表达式字符串数组
  * @retval   0：不符合表达式 1：符合表达式，停止客户端
  */
int filter_element(char *phoneOs);

#endif  ///#ifndef __FILTER__H__

/******************* (C) COPYRIGHT 2016上海今中网络科技有限公司 *****END OF FILE****/
